package thread;
/*
    优点；
    结构简单，适合匿名内部类创建
    缺点：
    由于java是单继承的，这导致如果我们继承了Thread就无法再继承其他类去复用方法了
    重写run方法，将线程要执行的任务定义在线程中，这导致线程与任务是紧耦合的
 */

public class ThreadDemo {
    public static void main(String[] args) {
        Thread t1=new MyThread1();
        Thread t2=new MyThread2();
        /*
            启动线程要调用线程的start方法，而不是直接调用run方法！
            当我们调用一个线程的start方法后，线程就启动了，随后run方法会很快被自动执行
         */
        t1.start();
        t2.start();
    }

}

class MyThread1 extends Thread {//第一步继承Thread

    public void run() {//第二步重写run方法，run方法中是线程要执行的代码
        for (int i = 0; i < 10000; i++) {
            System.out.println("你是谁啊？");
        }
    }
}

class MyThread2 extends Thread {
    public void run() {
        for (int i = 0; i < 10000; i++) {
            System.out.println("开门，查水表的！");
        }
    }
}
